package org.yefei.homeworkday26;

import java.io.Serializable;

public class Staff implements Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	/*
	 * 公司有公司名称，注册地址，电话，经营范围等属性（动态输入），公司有很多员工（用List存储，作为公司的一部分），员工有姓名，年龄，性别，职务，薪水、
	 * 工号等属性，公司有招聘员工（要求工号不能重复），有输出员工信息，以及辞退员工，和统计公司人数的方法
	 * 用oo的思想模拟，同时序列化公司的全部信息（包括员工）。下次启动能获得上次的信息。
	 */
	private String name;
	private int age;
	private String sex;
	private String position;// 职务
	private double salary;
	private String wNum;// 工号

	public Staff() {
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getPosition() {
		return position;
	}

	public void setPosition(String position) {
		this.position = position;
	}

	public double getSalary() {
		return salary;
	}

	public void setSalary(double salary) {
		this.salary = salary;
	}

	public String getwNum() {
		return wNum;
	}

	public void setwNum(String wNum) {
		this.wNum = wNum;
	}

	public Staff(String name, int age, String sex, String position, double salary, String wNum) {
		this.name = name;
		this.age = age;
		this.sex = sex;
		this.position = position;
		this.salary = salary;
		this.wNum = wNum;
	}

	@Override
	public String toString() {
		return "员工信息： [姓名=" + name + ", 年龄=" + age + ", 性别=" + sex + ", 职务=" + position + ", 薪水=" + salary + "万, 工号="
				+ wNum + "]";
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((wNum == null) ? 0 : wNum.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Staff other = (Staff) obj;
		if (wNum == null) {
			if (other.wNum != null)
				return false;
		} else if (!wNum.equals(other.wNum))
			return false;
		return true;
	}
}
